//
//  PhotoBrowerManager.h
//  Logistics
//
//  Created by 刘峰 on 2018/1/5.
//  Copyright © 2018年 com.Logistics. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "ImageChooseFormObject.h"
#import "GRUploadManager.h"

#define KNotificationDidFinishIMAGE @"DidFinishIMAGENotification" // 图片选择完成


typedef enum : NSUInteger {
    PhotoBrowserContentModeAll = 0, // 相册 和 相机
    PhotoBrowserContentModePhoto,   // 相册
    PhotoBrowserContentModeCamera,  // 相机
} PhotoBrowserContentMode;


typedef void(^FinishSelectedBlock)(NSArray<UIImage *> *images);

@interface PhotoBrowerManager : NSObject


@property (nonatomic, assign) NSInteger maxLimit; // 最大限制数（最多选择多少张图片）


+ (instancetype)defaultManager;




/**
 多选图片（限制数量）-（弹框形态：自定义、中部、底部）

 @param form 弹框形态
 @param limitNum 限制的图片数量
 @param currentVc 当前控制器
 @param finishBlock 回传图片数组
 */
- (void)muitiImagesForm:(ImageChooseForm)form
               MaxLimit:(NSInteger)limitNum
              CurrentVc:(UIViewController *)currentVc
            FinishBlock:(FinishSelectedBlock)finishBlock;



/**
 多选图片（可限制数量）

 @param limitNum 限制的图片数量
 @param mode 单独展示相册/相机 还是相机与相册的集合
 @param currentVc 当前控制器
 @param finishBlock 回传图片数组
 */
- (void)multipleImages:(NSInteger)limitNum
           ContentMode:(PhotoBrowserContentMode)mode
             CurrentVc:(UIViewController *)currentVc
           FinishBlock:(FinishSelectedBlock)finishBlock;


/**
 单选图片

 @param mode 单独展示相册/相机 还是相机与相册的集合
 @param currentVc 当前控制器
 @param finishBlock 回传图片
 */
- (void)selectAlongPicture:(PhotoBrowserContentMode)mode
                 CurrentVc:(UIViewController *)currentVc
               FinishBlock:(FinishSelectedBlock)finishBlock;



@end
